package com.gopay.common.domain.ic;

import com.gopay.common.domain.BaseEntity;

import javax.persistence.*;
import java.math.BigDecimal;
import java.util.Date;

/** 
 * 说明：内部对账日报表 实体类
 * 创建时间：2016-12-27
 */
@Entity
@Table(name = "ic_report_daily")
public class ReportDaily extends BaseEntity {

	private Long keyId;			//主键

	private String checkDate;			//对账日期

	private BigDecimal debitAmt;//借方金额

	private BigDecimal creditAmt;//贷方金额

	private BigDecimal tradeAmt;			//交易发生额

	private BigDecimal acctAmt;			//账务发生额

	private BigDecimal initAmt;			//期初余额

	private BigDecimal terminalAmt;			//期末余额

	private Date createdTs;			//创建时间

	private Integer version;			//乐观锁版本号

	private Date lastUpdTs;//最后修改时间


	@Id
	@GeneratedValue(strategy = GenerationType.SEQUENCE, generator = "ic_report_daily_seq")
	@SequenceGenerator(name = "ic_report_daily_seq", allocationSize = 1, initialValue = 1, sequenceName = "ic_report_daily_seq")
	@Column(name = "KEY_ID")
	public Long getKeyId() {
		return keyId;
	}

	public void setKeyId(Long keyId) {
		this.keyId = keyId;
	}

	@Column(name = "CHECK_DATE")
	public String getCheckDate() {
		return checkDate;
	}

	public void setCheckDate(String checkDate) {
		this.checkDate = checkDate;
	}

	@Column(name = "DEBIT_AMT")
	public BigDecimal getDebitAmt() {
		return debitAmt;
	}

	public void setDebitAmt(BigDecimal debitAmt) {
		this.debitAmt = debitAmt;
	}

	@Column(name = "CREDIT_AMT")
	public BigDecimal getCreditAmt() {
		return creditAmt;
	}

	public void setCreditAmt(BigDecimal creditAmt) {
		this.creditAmt = creditAmt;
	}

	@Column(name = "TRADE_AMT")
	public BigDecimal getTradeAmt() {
		return tradeAmt;
	}

	public void setTradeAmt(BigDecimal tradeAmt) {
		this.tradeAmt = tradeAmt;
	}

	@Column(name = "ACCT_AMT")
	public BigDecimal getAcctAmt() {
		return acctAmt;
	}

	public void setAcctAmt(BigDecimal acctAmt) {
		this.acctAmt = acctAmt;
	}

	@Column(name = "INIT_AMT")
	public BigDecimal getInitAmt() {
		return initAmt;
	}

	public void setInitAmt(BigDecimal initAmt) {
		this.initAmt = initAmt;
	}

	@Column(name = "TERMINAL_AMT")
	public BigDecimal getTerminalAmt() {
		return terminalAmt;
	}

	public void setTerminalAmt(BigDecimal terminalAmt) {
		this.terminalAmt = terminalAmt;
	}

	@Column(name = "CREATED_TS")
	public Date getCreatedTs() {
		return createdTs;
	}

	public void setCreatedTs(Date createdTs) {
		this.createdTs = createdTs;
	}

	@Column(name = "LAST_UPD_TS")
	public Date getLastUpdTs() {
		return lastUpdTs;
	}

	public void setLastUpdTs(Date lastUpdTs) {
		this.lastUpdTs = lastUpdTs;
	}

	@Version
	@Column(name = "VERSION")
	public Integer getVersion() {
		return version;
	}

	public void setVersion(Integer version) {
		this.version = version;
	}
}
